Function at 0x58a7f0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x40]
cmp eax, dword [ecx + 8]
jbe 0x58b710
sub esp, 0xc0
mov eax, dword [esp + 0xc4]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 4]
mov ebx, dword [eax]
test ebx, ebx
jne 0x58b4aa
mov ecx, dword [eax + 0x20]
mov edx, dword [eax + 0x2c]
lea ecx, [ecx + edx*2]
add ecx, dword [eax + 0x38]
movzx edx, byte [eax + 0x4c]
movzx ebx, byte [eax + 0x40]
test dl, dl
je 0x58b4a1
lea edx, [ebx + 1]
mov ebx, 5
mov ebp, dword [eax + 0x48]
test ebp, ebp
jle 0x58a857
lea ebx, [ebx + ebp + 5]
inc edx
mov ebp, dword [eax + 0x54]
test ebp, ebp
jle 0x58a863
lea ebx, [ebx + ebp*2 + 2]
inc edx
mov ebp, dword [eax + 0x60]
test ebp, ebp
jle 0x58a86f
lea ebx, [ebp + ebx + 1]
inc edx
movzx ebp, byte [eax + 0x68]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x58a87f
mov ebp, dword [eax + 0x70]
add ebx, ebp
inc edx
mov ebp, dword [eax + 0x7c]
test ebp, ebp
jle 0x58a88b
lea ebx, [ebx + ebp*2 + 2]
inc edx
movzx ebp, byte [eax + 0x90]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x58a8a3
mov ebp, dword [eax + 0x88]
lea ebx, [ebp + ebx + 1]
inc edx
mov ebp, dword [eax + 0x94]
mov esi, dword [eax + 0x98]
test esi, esi
jle 0x58a8e8
mov dword [esp + 0x60], ecx
add ebx, 2
xor edi, edi
jmp 0x58a8c7
inc edi
lea ebx, [ecx + ebx + 1]
mov ecx, dword [esp + 0x60]
cmp edi, esi
jge 0x58a8e7
lea ecx, [ebp + edi*8]
mov ecx, dword [ecx + 4]
test ecx, ecx
je 0x58b6f6
cmp ecx, 0xff
jle 0x58a8be
jmp 0x58b6f6
inc edx
movzx ebp, byte [eax + 0x4d]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x58a8f3
inc edx
mov dword [esp + 0x30], edx
lea ebp, [ecx + 0x26]
test edx, edx
jle 0x58b49a
lea ebx, [ebx + edx*4]
lea ecx, [ebx + ecx + 0x28]
mov dword [esp + 0x34], ecx
mov dword [esp + 0x3c], ebx
lea eax, [0x731080]
mov dword [esp], eax
lea eax, [ecx + 4]
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.00438a70
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
test edx, edx
jbe 0x58b6ef
mov byte [ecx], 1
cmp edx, 1
jbe 0x58b6e8
mov ebx, dword [esp + 0x34]
mov ebp, ebx
sar ebx, 0x10
mov byte [ecx + 1], bl
cmp edx, 2
jbe 0x58b6e1
mov ebx, ebp
sar ebp, 8
xchg ebp, eax
mov byte [ecx + 2], al
xchg ebp, eax
cmp edx, 3
jbe 0x58b6da
mov byte [ecx + 3], bl
mov edi, dword [esp + 0xc4]
movzx ebx, word [edi + 0xc]
cmp edx, 4
jbe 0x58b6d3
shr bx, 8
mov byte [ecx + 4], bl
movzx ebx, word [edi + 0xc]
cmp edx, 5
jbe 0x58b6cc
mov byte [ecx + 5], bl
cmp eax, 0x26
jb 0x58b6c5
mov ebx, dword [edi + 0x10]
mov ebp, dword [edi + 0x14]
cmp ebp, 0x20
jge 0x58b490
mov dword [esp + 0x28], eax
mov dword [esp + 0xa0], ecx
mov dword [esp + 0x24], edx
lea esi, [ecx + 6]
cmp ebx, esi
je 0x58a9de
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
call fcn.0044d1e0
mov edi, dword [esp + 0xc4]
mov ecx, dword [edi + 0x20]
mov edx, dword [esp + 0x24]
cmp edx, 0x26
jbe 0x58b6be
mov eax, dword [esp + 0xa0]
mov byte [eax + 0x26], cl
mov ecx, dword [edi + 0x20]
lea ebx, [ecx + 0x27]
mov ebp, dword [edi + 0x1c]
test ebx, ebx
jl 0x58b6b7
cmp ebx, 0x27
jb 0x58b6b7
mov esi, dword [esp + 0x28]
cmp ebx, esi
ja 0x58b6b7
lea ebx, [esi - 0x27]
neg ebx
sar ebx, 0x1f
and ebx, 0x27
add ebx, eax
cmp ebx, ebp
je 0x58aa46
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
call fcn.0044d1e0
mov edi, dword [esp + 0xc4]
mov ecx, dword [edi + 0x20]
add ecx, 0x27
mov edx, dword [esp + 0x24]
cmp ecx, edx
ja 0x58b6b0
mov ebx, dword [esp + 0x28]
sub ebx, ecx
mov esi, ebx
neg ebx
sar ebx, 0x1f
and ebx, ecx
mov eax, dword [esp + 0xa0]
lea ebp, [ebx + eax]
sub edx, ecx
mov ecx, dword [edi + 0x2c]
test edx, edx
jbe 0x58b6a9
sar ecx, 7
mov byte [eax + ebx], cl
mov ecx, dword [edi + 0x2c]
cmp edx, 1
jbe 0x58b6a2
mov dword [esp + 0x60], esi
shl ecx, 1
mov byte [eax + ebx + 1], cl
mov ecx, dword [edi + 0x28]
mov dword [esp + 0xbc], ecx
mov ebx, dword [edi + 0x2c]
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x74], eax
xor eax, eax
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x74]
jmp 0x58aae5
mov byte [esi + ebp + 3], bl
mov ecx, dword [esp + 0x38]
inc ecx
mov ebx, dword [esp + 0x5c]
mov esi, dword [esp + 0xbc]
mov esi, dword [esp + 0x60]
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0xbc]
mov esi, dword [esp + 0x38]
cmp esi, ebx
jge 0x58ab14
movzx ecx, word [ecx + esi*2]
shl esi, 1
lea ebx, [esi + 2]
cmp ebx, edx
jae 0x58b69b
mov ebx, ecx
shr cx, 8
mov byte [esi + ebp + 2], cl
lea ecx, [esi + 3]
cmp ecx, edx
jb 0x58aac2
jmp 0x58b694
mov ecx, dword [edi + 0x2c]
shl ecx, 1
add ecx, 2
cmp ecx, edx
ja 0x58b68d
mov ebx, dword [esp + 0x60]
sub ebx, ecx
mov dword [esp + 0x20], ebx
neg ebx
sar ebx, 0x1f
and ebx, ecx
lea esi, [ebx + ebp]
sub edx, ecx
mov ecx, dword [edi + 0x38]
test edx, edx
jbe 0x58b686
mov dword [esp + 0x9c], esi
mov byte [ebp + ebx], cl
mov ecx, dword [esp + 0x20]
lea ebx, [ecx - 1]
neg ebx
sar ebx, 0x1f
and ebx, 1
add ebx, esi
lea ebp, [edx - 1]
mov esi, dword [edi + 0x34]
mov ecx, dword [edi + 0x38]
cmp ebp, ecx
jle 0x58b489
mov dword [esp + 0x1c], edx
cmp esi, ebx
je 0x58ab8a
mov dword [esp], ebx
mov dword [esp + 4], esi
mov dword [esp + 8], ecx
call fcn.0044d1e0
mov edi, dword [esp + 0xc4]
mov ecx, dword [edi + 0x38]
inc ecx
mov edx, dword [esp + 0x1c]
cmp ecx, edx
ja 0x58b67f
mov ebx, dword [esp + 0x20]
sub ebx, ecx
mov ebp, ebx
neg ebx
sar ebx, 0x1f
and ebx, ecx
mov esi, dword [esp + 0x9c]
mov eax, ebp
lea ebp, [ebx + esi]
sub edx, ecx
mov ecx, dword [esp + 0x30]
test ecx, ecx
jle 0x58b480
test edx, edx
jbe 0x58b678
mov ecx, dword [esp + 0x3c]
sar ecx, 8
mov byte [esi + ebx], cl
cmp edx, 1
jbe 0x58b671
mov ecx, dword [esp + 0x3c]
mov byte [esi + ebx + 1], cl
lea ecx, [eax - 2]
mov ebx, ecx
neg ecx
sar ecx, 0x1f
and ecx, 2
add ecx, ebp
add edx, 0xfffffffe
movzx ebp, byte [edi + 0x40]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x58b479
test edx, edx
jbe 0x58b66a
mov byte [ecx], 0x33
cmp edx, 1
jbe 0x58b663
mov byte [ecx + 1], 0x74
cmp edx, 4
jb 0x58b65c
add ebx, 0xfffffffc
mov ebp, ebx
neg ebx
sar ebx, 0x1f
and ebx, 4
add ecx, ebx
add edx, 0xfffffffc
mov ebx, dword [edi + 0x48]
test ebx, ebx
jg 0x58b32f
movzx ebx, byte [edi + 0x4c]
test bl, bl
je 0x58acad
test edx, edx
jbe 0x58b616
mov byte [ecx], 0
cmp edx, 1
jbe 0x58b60f
mov byte [ecx + 1], 5
cmp edx, 2
jbe 0x58b608
mov byte [ecx + 2], 0
cmp edx, 3
jbe 0x58b601
mov byte [ecx + 3], 5
cmp edx, 4
jbe 0x58b5fa
mov byte [ecx + 4], 1
cmp edx, 9
jb 0x58b5f3
lea ebx, [ebp - 9]
mov ebp, ebx
neg ebx
sar ebx, 0x1f
and ebx, 9
add ecx, ebx
add edx, 0xfffffff7
mov ebx, dword [edi + 0x54]
test ebx, ebx
jle 0x58ad91
test edx, edx
jbe 0x58b5ec
mov byte [ecx], 0
cmp edx, 1
jbe 0x58b5e5
mov byte [ecx + 1], 0xa
mov ebx, dword [edi + 0x54]
cmp edx, 2
jbe 0x58b5de
shl ebx, 1
lea esi, [ebx + 2]
mov eax, esi
sar esi, 8
xchg esi, eax
mov byte [ecx + 2], al
xchg esi, eax
cmp edx, 3
jbe 0x58b5d7
mov byte [ecx + 3], al
cmp edx, 4
jbe 0x58b5d0
mov esi, ebx
sar ebx, 8
mov byte [ecx + 4], bl
cmp edx, 5
jbe 0x58b5c9
xchg esi, eax
mov byte [ecx + 5], al
xchg esi, eax
lea ebx, [ebp - 6]
mov ebp, ebx
neg ebx
sar ebx, 0x1f
and ebx, 6
add ecx, ebx
add edx, 0xfffffffa
mov ebx, dword [edi + 0x54]
mov esi, dword [edi + 0x50]
mov dword [esp + 0xb8], esi
xor eax, eax
jmp 0x58ad6a
movzx esi, word [esp + 0x1a]
xchg esi, eax
mov byte [ecx + 1], al
xchg esi, eax
inc eax
add ebp, 0xfffffffe
mov esi, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, 2
add ecx, ebp
add edx, 0xfffffffe
mov ebp, dword [esp + 0xb8]
mov ebp, esi
mov esi, dword [esp + 0xb8]
cmp eax, ebx
jge 0x58ad91
movzx esi, word [esi + eax*2]
test edx, edx
jbe 0x58b5c2
mov word [esp + 0x1a], si
shr si, 8
xchg esi, eax
mov byte [ecx], al
xchg esi, eax
cmp edx, 1
ja 0x58ad39
jmp 0x58b5bb
mov ebx, dword [edi + 0x60]
test ebx, ebx
jle 0x58ae40
test edx, edx
jbe 0x58b5b4
mov byte [ecx], 0
cmp edx, 1
jbe 0x58b5ad
mov byte [ecx + 1], 0xb
mov ebx, dword [edi + 0x60]
cmp edx, 2
jbe 0x58b5a6
lea esi, [ebx + 1]
mov eax, esi
sar esi, 8
xchg esi, eax
mov byte [ecx + 2], al
xchg esi, eax
cmp edx, 3
jbe 0x58b59f
mov byte [ecx + 3], al
cmp edx, 4
jbe 0x58b598
mov byte [ecx + 4], bl
lea ebx, [ebp - 5]
mov ebp, ebx
neg ebx
sar ebx, 0x1f
and ebx, 5
add ecx, ebx
add edx, 0xfffffffb
mov ebx, dword [edi + 0x60]
mov esi, dword [edi + 0x5c]
mov dword [esp + 0xb4], esi
xor eax, eax
jmp 0x58ae2f
xchg esi, eax
mov byte [ecx], al
xchg esi, eax
inc eax
dec ebp
mov esi, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, 1
add ecx, ebp
dec edx
mov ebp, dword [esp + 0xb4]
mov ebp, esi
mov esi, dword [esp + 0xb4]
cmp eax, ebx
jge 0x58ae40
movzx esi, byte [esi + eax]
test edx, edx
ja 0x58ae08
jmp 0x58b591
movzx ebx, byte [edi + 0x68]
test bl, bl
je 0x58b328
test edx, edx
jbe 0x58b58a
mov byte [ecx], 0
cmp edx, 1
jbe 0x58b583
mov byte [ecx + 1], 0x23
mov ebx, dword [edi + 0x70]
cmp edx, 2
jbe 0x58b57c
mov esi, ebx
sar ebx, 8
mov byte [ecx + 2], bl
cmp edx, 3
jbe 0x58b575
xchg esi, eax
mov byte [ecx + 3], al
xchg esi, eax
lea ebx, [ebp - 4]
mov ebp, ebx
neg ebx
sar ebx, 0x1f
and ebx, 4
add ecx, ebx
add edx, 0xfffffffc
mov ebx, dword [edi + 0x70]
mov esi, dword [edi + 0x6c]
cmp edx, ebx
jle 0x58b321
mov dword [esp + 0x58], edx
mov dword [esp + 0x60], ebp
mov dword [esp + 0x9c], ecx
cmp esi, ecx
je 0x58aec9
mov dword [esp], ecx
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
call fcn.0044d1e0
mov edi, dword [esp + 0xc4]
mov ecx, dword [edi + 0x70]
mov edx, dword [esp + 0x58]
cmp ecx, edx
ja 0x58b56e
mov ebx, dword [esp + 0x60]
sub ebx, ecx
mov ebp, ebx
neg ebx
sar ebx, 0x1f
and ebx, ecx
mov esi, dword [esp + 0x9c]
add ebx, esi
sub edx, ecx
mov ecx, dword [edi + 0x7c]
test ecx, ecx
jle 0x58b316
test edx, edx
jbe 0x58b567
mov byte [ebx], 0
cmp edx, 1
jbe 0x58b560
mov byte [ebx + 1], 0xd
mov ecx, dword [edi + 0x7c]
cmp edx, 2
jbe 0x58b559
shl ecx, 1
lea esi, [ecx + 2]
mov eax, esi
sar esi, 8
xchg esi, eax
mov byte [ebx + 2], al
xchg esi, eax
cmp edx, 3
jbe 0x58b552
mov dword [esp + 0x54], edx
mov byte [ebx + 3], al
lea esi, [ebp - 4]
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, 4
mov eax, ebp
lea ebp, [ebx + esi]
add edx, 0xfffffffc
test edx, edx
jbe 0x58b54b
mov dword [esp + 0x60], ecx
sar ecx, 8
mov byte [ebx + esi], cl
cmp edx, 1
jbe 0x58b544
mov ecx, dword [esp + 0x60]
mov byte [ebx + esi + 1], cl
lea ecx, [eax - 6]
mov edx, ecx
neg ecx
sar ecx, 0x1f
and ecx, 2
add ecx, ebp
mov ebx, dword [esp + 0x54]
add ebx, 0xfffffffa
mov ebp, dword [edi + 0x7c]
mov esi, dword [edi + 0x78]
mov dword [esp + 0xb0], esi
xor eax, eax
jmp 0x58afd5
movzx esi, word [esp + 0x18]
xchg esi, eax
mov byte [ecx + 1], al
xchg esi, eax
inc eax
add edx, 0xfffffffe
mov esi, edx
neg edx
sar edx, 0x1f
and edx, 2
add ecx, edx
add ebx, 0xfffffffe
mov edx, dword [esp + 0xb0]
mov edx, esi
mov esi, dword [esp + 0xb0]
cmp eax, ebp
jge 0x58affc
movzx esi, word [esi + eax*2]
test ebx, ebx
jbe 0x58b53d
mov word [esp + 0x18], si
shr si, 8
xchg esi, eax
mov byte [ecx], al
xchg esi, eax
cmp ebx, 1
ja 0x58afa8
jmp 0x58b536
movzx ebp, byte [edi + 0x90]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x58b30b
test ebx, ebx
jbe 0x58b52f
mov byte [ecx], 0xff
cmp ebx, 1
jbe 0x58b528
mov byte [ecx + 1], 1
cmp ebx, 2
jbe 0x58b521
mov byte [ecx + 2], 0
mov ebp, dword [edi + 0x88]
cmp ebx, 3
jbe 0x58b51a
inc ebp
xchg ebp, eax
mov byte [ecx + 3], al
xchg ebp, eax
mov ebp, dword [edi + 0x88]
cmp ebx, 4
jbe 0x58b513
xchg ebp, eax
mov byte [ecx + 4], al
xchg ebp, eax
add edx, 0xfffffffb
mov ebp, edx
neg edx
sar edx, 0x1f
and edx, 5
add ecx, edx
lea edx, [ebx - 5]
mov ebx, dword [edi + 0x88]
mov esi, dword [edi + 0x84]
cmp edx, ebx
jle 0x58b304
mov dword [esp + 0x50], edx
mov dword [esp + 0x60], ebp
mov dword [esp + 0x9c], ecx
cmp esi, ecx
je 0x58b0a4
mov dword [esp], ecx
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
call fcn.0044d1e0
mov edi, dword [esp + 0xc4]
mov ecx, dword [edi + 0x88]
mov edx, dword [esp + 0x50]
cmp ecx, edx
ja 0x58b50c
mov ebx, dword [esp + 0x60]
sub ebx, ecx
mov ebp, ebx
neg ebx
sar ebx, 0x1f
and ebx, ecx
mov esi, dword [esp + 0x9c]
add ebx, esi
sub edx, ecx
mov ecx, dword [edi + 0x98]
test ecx, ecx
jle 0x58b2fe
test edx, edx
jbe 0x58b505
mov byte [ebx], 0
cmp edx, 1
jbe 0x58b4fe
mov byte [ebx + 1], 0x10
cmp edx, 6
jb 0x58b4f7
mov dword [esp + 0x4c], edx
mov dword [esp + 0x20], ebp
mov dword [esp + 0xac], ebx
lea ecx, [ebp - 6]
mov esi, ecx
neg ecx
sar ecx, 0x1f
and ecx, 6
add ecx, ebx
mov eax, ebx
lea ebx, [edx - 6]
mov ebp, dword [edi + 0x94]
mov dword [esp + 0xa8], ebp
mov edx, dword [edi + 0x98]
mov dword [esp + 0x60], edx
mov dword [esp + 0x6c], eax
xor eax, eax
mov dword [esp + 0x5c], eax
xor eax, eax
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x6c]
jmp 0x58b1ad
mov eax, dword [esp + 0x5c]
inc eax
mov esi, dword [esp + 0x58]
sub esi, edx
mov ebp, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, edx
mov edi, dword [esp + 0xa4]
add esi, edi
sub ebx, edx
mov edx, dword [esp + 0x2c]
lea ecx, [ecx + edx + 1]
mov edx, dword [esp + 0x60]
mov edi, dword [esp + 0xa8]
mov edi, dword [esp + 0xc4]
mov dword [esp + 0x5c], eax
mov dword [esp + 0x2c], ecx
mov ecx, esi
mov eax, dword [esp + 0xac]
mov esi, ebp
mov ebp, dword [esp + 0xa8]
mov dword [esp + 0x58], esi
mov esi, dword [esp + 0x5c]
cmp esi, edx
jge 0x58b234
lea ebp, [ebp + esi*8]
mov edx, dword [ebp + 4]
mov ebp, dword [ebp]
test ebx, ebx
jbe 0x58b4f0
mov dword [esp + 0xa4], ecx
mov byte [ecx], dl
mov esi, dword [esp + 0x58]
dec esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, 1
add esi, ecx
lea ecx, [ebx - 1]
cmp ecx, edx
jle 0x58b224
mov ecx, edx
mov dword [esp + 0x54], ecx
mov dword [esp + 0x48], ebx
cmp esi, ebp
je 0x58b20c
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
call fcn.0044d1e0
mov ecx, dword [esp + 0x54]
lea edx, [ecx + 1]
mov ebx, dword [esp + 0x48]
cmp edx, ebx
jbe 0x58b156
jmp 0x58b4e9
mov dword [esp + 0x64], eax
mov eax, ecx
mov ecx, edx
mov edx, eax
mov eax, dword [esp + 0x64]
jmp 0x58b1f0
mov edx, dword [esp + 0x4c]
add edx, 0xfffffffe
cmp edx, 2
jbe 0x58b4e2
mov ebp, dword [esp + 0x20]
add ebp, 0xfffffffe
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, 2
mov esi, dword [esp + 0x2c]
sar esi, 8
xchg esi, ebx
mov byte [eax + ebp + 2], bl
xchg esi, ebx
cmp edx, 3
jbe 0x58b4db
mov edx, dword [esp + 0x2c]
mov byte [eax + ebp + 3], dl
add edx, 2
mov esi, edx
sar edx, 8
mov byte [eax + ebp], dl
xchg esi, ebx
mov byte [eax + ebp + 1], bl
xchg esi, ebx
movzx edx, byte [edi + 0x4d]
test dl, dl
je 0x58b2b3
test ebx, ebx
jbe 0x58b4d4
mov byte [ecx], 0
cmp ebx, 1
jbe 0x58b4cd
mov byte [ecx + 1], 0x12
cmp ebx, 4
jb 0x58b4c6
mov ecx, dword [esp + 0x24]
mov dword [edi + 4], ecx
mov edx, dword [esp + 0x28]
mov dword [edi + 8], edx
mov ebx, dword [0xa8f2d0]
test ebx, ebx
jne 0x58b2f0
mov eax, dword [esp + 0xa0]
mov dword [edi], eax
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], ecx
mov dword [esp + 0xd0], edx
add esp, 0xc0
ret
mov eax, dword [esp + 0xa0]
call fcn.0044c9e0
jmp 0x58b2d4
mov ecx, ebx
mov ebx, edx
jmp 0x58b28a
mov ebx, edx
jmp 0x58b081
mov ebp, edx
mov edx, ebx
mov ebx, ecx
jmp 0x58b0d7
mov ecx, ebx
mov ebx, edx
mov edx, ebp
jmp 0x58affc
mov ebx, edx
jmp 0x58aea6
mov ebx, ecx
jmp 0x58aef9
test edx, edx
jbe 0x58b655
mov byte [ecx], 0
cmp edx, 1
jbe 0x58b64e
mov byte [ecx + 1], 0
mov eax, dword [edi + 0x48]
cmp edx, 2
jbe 0x58b647
add eax, 5
mov ebx, eax
sar eax, 8
mov byte [ecx + 2], al
cmp edx, 3
jbe 0x58b640
mov dword [esp + 0x60], ebx
mov dword [esp + 0x44], edx
mov byte [ecx + 3], bl
lea eax, [ebp - 4]
mov dword [esp + 0x20], eax
neg eax
sar eax, 0x1f
and eax, 4
lea esi, [ecx + eax]
lea ebx, [edx - 4]
mov edx, dword [edi + 0x48]
test ebx, ebx
jbe 0x58b639
add edx, 3
sar edx, 8
mov byte [ecx + eax], dl
mov edx, dword [edi + 0x48]
cmp ebx, 1
jbe 0x58b632
add edx, 3
mov byte [ecx + eax + 1], dl
mov edx, dword [edi + 0x48]
cmp ebx, 3
jbe 0x58b62b
sar edx, 8
mov byte [ecx + eax + 3], dl
mov edx, dword [edi + 0x48]
cmp ebx, 4
jbe 0x58b624
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x9c], esi
mov dword [esp + 0x40], ebp
mov byte [ecx + eax + 4], dl
mov eax, dword [edi + 0x44]
mov ecx, dword [edi + 0x48]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
lea eax, [esp + 0x7c]
mov dword [esp], eax
call fcn.0043bfb0
mov eax, dword [esp + 0x40]
add eax, 0xfffffff7
neg eax
sar eax, 0x1f
and eax, 5
mov ecx, dword [esp + 0x9c]
add eax, ecx
mov edx, dword [esp + 0x44]
add edx, 0xfffffff7
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x10]
cmp edx, ebp
jle 0x58b475
cmp ebx, eax
je 0x58b439
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
call fcn.0044d1e0
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x1c]
cmp ecx, edx
ja 0x58b61d
sub edx, ecx
mov ebp, dword [esp + 0x20]
sub ebp, ecx
mov ebx, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ecx, ebp
mov esi, dword [esp + 0x9c]
add ecx, esi
mov edi, dword [esp + 0xc4]
mov ebp, ebx
jmp 0x58ac4b
mov ebp, edx
jmp 0x58b425
mov ebp, ebx
jmp 0x58ac40
mov ebx, eax
mov ecx, ebp
jmp 0x58abff
mov ecx, ebp
jmp 0x58ab72
mov ebp, 0x20
jmp 0x58a9b8
mov ecx, ebp
jmp 0x58a909
mov edx, ebx
xor ebx, ebx
jmp 0x58a84b
mov dword [esp + 0xc8], ebx
mov dword [esp + 0xcc], edx
mov dword [esp + 0xd0], ecx
add esp, 0xc0
ret
call fcn.004267e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004267e0
ud2
call fcn.004266e0
ud2
call fcn.004267e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004267e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004267e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004267e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004267e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004267e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004267e0
ud2
call fcn.004266e0
ud2
call fcn.004267e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004267e0
ud2
call fcn.004267e0
ud2
call fcn.004266e0
ud2
call fcn.004267e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.004266e0
ud2
lea eax, [0x730dc0]
mov dword [esp], eax
lea eax, [0x7fc5d8]
mov dword [esp + 4], eax
call fcn.004275c0
ud2
call fcn.0044b280
jmp fcn.0058a7f0