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

Disassembly:
sub esp, 0x58
mov eax, dword [esp + 0x5c]
mov ecx, dword [eax + 0x5c]
mov edx, dword [eax + 0x60]
mov eax, dword [eax + 0xac]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x6c]
push edi
mov edi, dword [esi*4 + 0x5fc6bc]
add edi, ecx
mov dword [esp + 0x18], ecx
mov ecx, dword [esi*4 + str.JJJ]
add ecx, edx
mov dword [esp + 0x1c], edx
lea edx, [esp + 0x18]
push edx
push eax
mov dword [esp + 0x1c], edi
mov dword [esp + 0x18], ecx
xor ebp, ebp
call fcn.004d3720
mov ebx, 1
mov esi, eax
call fcn.004031f0
mov edx, dword [esp + 0x6c]
mov eax, dword [edx + 0xac]
lea ecx, [esp + 0x18]
push ecx
push eax
call fcn.004d3720
mov esi, eax
call fcn.004031f0
mov ecx, dword [esp + 0x70]
cmp dword [esp + 0x18], ecx
jne 0x540ae3
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + 0xb4]
lea edx, [esp + 0x18]
push edx
push ecx
call fcn.004d3720
mov esi, eax
call fcn.004031f0
mov edx, dword [esp + 0x70]
cmp dword [esp + 0x18], edx
jne 0x540ae3
mov eax, dword [esp + 0x10]
push 0
push eax
push edi
mov ebp, ebx
push 3
jmp 0x540bd1
mov edx, dword [esp + 0x6c]
mov eax, dword [edx + 0xbc]
lea ecx, [esp + 0x18]
push ecx
push eax
call fcn.004d3720
mov ebx, 1
mov esi, eax
call fcn.004031f0
mov ecx, dword [esp + 0x70]
cmp dword [esp + 0x18], ecx
jne 0x540b67
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + 0xac]
lea edx, [esp + 0x18]
push edx
push ecx
call fcn.004d3720
mov esi, eax
call fcn.004031f0
mov edx, dword [esp + 0x70]
cmp dword [esp + 0x18], edx
je 0x540b67
mov ecx, dword [esp + 0x6c]
mov edx, dword [ecx + 0xb4]
lea eax, [esp + 0x18]
push eax
push edx
call fcn.004d3720
mov esi, eax
call fcn.004031f0
mov eax, dword [esp + 0x70]
cmp dword [esp + 0x18], eax
je 0x540b67
mov ecx, dword [esp + 0x10]
xor ebp, ebp
push ebp
push ecx
push edi
push 4
jmp 0x540bd1
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + 0xb4]
lea edx, [esp + 0x18]
push edx
push ecx
call fcn.004d3720
mov ebx, 1
mov esi, eax
call fcn.004031f0
mov edx, dword [esp + 0x18]
cmp edx, dword [esp + 0x70]
jne 0x540bc7
mov ecx, dword [esp + 0x6c]
mov edx, dword [ecx + 0xac]
lea eax, [esp + 0x18]
push eax
push edx
call fcn.004d3720
mov esi, eax
call fcn.004031f0
mov eax, dword [esp + 0x70]
cmp dword [esp + 0x18], eax
je 0x540bc7
mov ecx, dword [esp + 0x10]
push 0
push ecx
push edi
or ebp, 0xffffffff
push 2
jmp 0x540bd1
mov edx, dword [esp + 0x10]
push 0
push edx
push edi
push 1
push 0xe30d0
call fcn.0054b850
mov eax, dword [esp + 0x84]
mov esi, dword [esp + 0x80]
imul eax, eax, 0x350
mov ecx, dword [esp + 0x24]
add esp, 0x14
lea ebx, [eax + esi]
lea edx, [ecx + ebp + 3]
movzx ecx, byte [ebx + 0x69d9]
push 0
push edx
lea eax, [edi + ebp + 5]
push eax
add ecx, 0x1d
push ecx
push 0xe30d1
mov dword [esp + 0x2c], ebx
call fcn.0054b850
mov edx, dword [esp + 0x84]
mov eax, dword [esp + 0x24]
add edx, 0x20
imul edx, edx, 0x350
push 0
add esi, edx
lea eax, [eax + ebp + 7]
push esi
lea ecx, [edi + ebp + 0x1b]
push eax
push ecx
call fcn.0054b7f0
mov ecx, dword [esp + 0x34]
push 0xffff
lea eax, [ecx + ebp + 7]
push esi
push eax
lea eax, [edi + ebp + 0x1b]
push eax
call fcn.0054b790
mov edx, dword [esp + 0x44]
push 0
lea eax, [edx + ebp + 0x3e]
mov edx, dword [esp + 0xa8]
push eax
lea ecx, [edi + ebp + 0x55]
push ecx
add edx, 0x4e20
push 0
push edx
call fcn.0054b850
add esp, 0x48
push 0xffffffffffffffff
push 0x7a128
xor eax, eax
mov ecx, 0x10
lea edi, [esp + 0x30]
push 0x8a3708
rep stosd dword es:[edi], eax
call fcn.0044ee40
push eax
call fcn.005489b0
mov al, byte [ebx + 0x6a5c]
add esp, 8
cmp al, 1
jne 0x540f98
cmp byte [ebx + 0x6a5d], al
jne 0x540e2e
push 0xffffffffffffffff
push 0x7a122
push 0x8a3708
call fcn.0044ee40
push eax
call fcn.005489b0
mov dword [esp + 0x78], eax
mov eax, dword [ebx + 0x6a1c]
push eax
lea ecx, [esp + 0x34]
push 0x59dc0c
push ecx
call fcn.0056aefc
lea eax, [esp + 0x3c]
add esp, 0x14
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x540d03
mov edi, dword [esp + 0x14]
push 3
push 7
sub eax, esi
mov esi, dword [esp + 0x18]
push eax
lea edx, [esp + 0x34]
push edx
push 0x33
push 0x29
push 0x32
lea eax, [esi + ebp + 0x84]
lea ecx, [edi + ebp + 0x32]
push eax
mov eax, ecx
call fcn.00432200
mov eax, dword [esp + 0x70]
push 0x6222
mov ecx, ebp
push 0x7a122
sub ecx, eax
push 0x8a3708
lea esi, [esi + ebp + 0x85]
lea edi, [ecx + edi + 0x9e]
call fcn.0044ee40
push eax
push esi
push edi
call fcn.0054b7f0
add esp, 0x10
push 0xff29
push 0x7a122
push 0x8a3708
call fcn.0044ee40
push eax
push esi
push edi
call fcn.0054b790
add esp, 0x10
push 0xffffffffffffffff
push 0x7a123
push 0x8a3708
call fcn.0044ee40
push eax
call fcn.005489b0
mov edx, dword [ebx + 0x6a20]
push edx
mov edi, eax
lea eax, [esp + 0x34]
push 0x59dc0c
push eax
call fcn.0056aefc
lea eax, [esp + 0x3c]
add esp, 0x14
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x540dc4
mov ecx, dword [esp + 0x10]
push 3
push 7
sub eax, esi
push eax
mov eax, dword [esp + 0x20]
lea edx, [esp + 0x34]
push edx
push 0x3e
push 0x34
lea esi, [ecx + ebp + 0x76]
push 0x32
push esi
lea eax, [eax + ebp + 0x32]
call fcn.00432200
mov ecx, dword [esp + 0x14]
push 0x9cc
push 0x7a123
sub ebp, edi
push 0x8a3708
lea ebp, [ecx + ebp + 0x9e]
call fcn.0044ee40
push eax
push esi
push ebp
call fcn.0054b7f0
add esp, 0x10
push 0x8dfc
push 0x7a123
jmp 0x540f81
cmp al, 1
jne 0x540f98
mov cl, byte [ebx + 0x6a5d]
test cl, cl
jne 0x540f98
push 0xffffffffffffffff
push 0x7a122
push 0x8a3708
call fcn.0044ee40
push eax
call fcn.005489b0
mov edx, dword [ebx + 0x6a1c]
push edx
mov dword [esp + 0x7c], eax
lea eax, [esp + 0x34]
push 0x59dc0c
push eax
call fcn.0056aefc
lea eax, [esp + 0x3c]
add esp, 0x14
lea esi, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x540e80
mov ecx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
push 3
push 7
sub eax, esi
push eax
lea edx, [esp + 0x34]
push edx
push 0x33
push 0x29
lea esi, [ecx + ebp + 0x77]
push 0x32
push esi
lea eax, [edi + ebp + 0x32]
call fcn.00432200
mov ecx, dword [esp + 0x70]
push 0x6222
mov eax, ebp
sub eax, ecx
push 0x7a122
lea ecx, [eax + edi + 0x9e]
push 0x8a3708
mov dword [esp + 0x7c], ecx
call fcn.0044ee40
mov edx, dword [esp + 0x74]
push eax
push esi
push edx
call fcn.0054b7f0
add esp, 0x10
push 0xff29
push 0x7a122
push 0x8a3708
call fcn.0044ee40
push eax
mov eax, dword [esp + 0x78]
push esi
push eax
call fcn.0054b790
add esp, 0x10
push 0xffffffffffffffff
push 0x7a128
push 0x8a3708
call fcn.0044ee40
push eax
call fcn.005489b0
add esp, 8
push 0xffffffffffffffff
push 0x7a122
push 0x8a3708
mov dword [esp + 0x7c], eax
call fcn.0044ee40
push eax
call fcn.005489b0
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x78]
add esp, 8
push 0x6222
lea esi, [ecx + ebp + 0x85]
push 0x7a128
sub ebp, edx
push 0x8a3708
lea ebp, [edi + ebp + 0x9e]
call fcn.0044ee40
push eax
push esi
push ebp
call fcn.0054b7f0
add esp, 0x10
push 0xff29
push 0x7a128
push 0x8a3708
call fcn.0044ee40
push eax
push esi
push ebp
call fcn.0054b790
jmp 0x5410ed
test al, al
jne 0x5410f0
cmp byte [ebx + 0x6a5d], 1
jne 0x5410f0
push 0xffffffffffffffff
push 0x7a123
push 0x8a3708
call fcn.0044ee40
push eax
call fcn.005489b0
mov edx, dword [ebx + 0x6a20]
push edx
mov dword [esp + 0x7c], eax
lea eax, [esp + 0x34]
push 0x59dc0c
push eax
call fcn.0056aefc
lea eax, [esp + 0x3c]
add esp, 0x14
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x540fe8
mov edi, dword [esp + 0x14]
push 3
push 7
sub eax, ecx
mov ecx, dword [esp + 0x18]
push eax
lea edx, [esp + 0x34]
push edx
push 0x3e
push 0x34
lea esi, [ecx + ebp + 0x76]
push 0x32
push esi
lea eax, [edi + ebp + 0x32]
call fcn.00432200
mov ebx, dword [esp + 0x70]
push 0x9cc
mov eax, ebp
push 0x7a123
sub eax, ebx
push 0x8a3708
lea ebx, [eax + edi + 0x9e]
call fcn.0044ee40
push eax
push esi
push ebx
call fcn.0054b7f0
add esp, 0x10
push 0x8dfc
push 0x7a123
push 0x8a3708
call fcn.0044ee40
push eax
push esi
push ebx
call fcn.0054b790
add esp, 0x10
push 0xffffffffffffffff
push 0x7a129
push 0x8a3708
call fcn.0044ee40
push eax
call fcn.005489b0
add esp, 8
push 0xffffffffffffffff
push 0x7a123
push 0x8a3708
mov ebx, eax
call fcn.0044ee40
push eax
call fcn.005489b0
mov ecx, dword [esp + 0x18]
add esp, 8
push 0x9cc
lea esi, [ecx + ebp + 0x85]
push 0x7a129
sub ebp, ebx
push 0x8a3708
lea ebp, [edi + ebp + 0x9e]
call fcn.0044ee40
push eax
push esi
push ebp
call fcn.0054b7f0
add esp, 0x10
push 0x8dfc
push 0x7a129
push 0x8a3708
call fcn.0044ee40
push eax
push esi
push ebp
call fcn.0054b790
mov ebx, dword [esp + 0x28]
add esp, 0x10
mov edx, dword [esp + 0x6c]
cmp dword [edx + 0xa4], 0x14
jge 0x541142
mov ecx, dword [ebx + 0x69f4]
lea eax, [esp + 0x18]
push eax
push ecx
call fcn.004d3720
mov ebx, 1
mov esi, eax
call fcn.004031f0
cmp dword [esp + 0x18], 0xa
jge 0x541142
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
push 0
add edx, 0xfffffff6
push edx
add eax, 0xfffffff1
push eax
push 0x13
push 0xe30d0
call fcn.0054b850
add esp, 0x14
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x58
ret 8